"I dream of painting and then I paint my dream." - Omar Elalem

Introduction

Creation of art is among the highest form of expression of human mind and imagination. The ability of communicating imagination sets us apart from all other beings. Painting, being an expression of visual language, have attracted and connected the brilliant human minds since the dawn of civilization - from early drawings on walls of caves to paper or glass paintings of modern times, from charcoals in prehistoric times to water, oil, or pastel colors of today. We have travelled a long way, and have finally reached a stage where not only humans but computers, another brilliant creation of human minds, is creating paintings.

This project delves into the realm of art and artificial intelligence, utilizing a deep learning model to generate over 200 images by leveraging ten of the user's paintings. The primary objective is to explore the boundaries of artistic style and challenge the model to discern between the user's artwork and masterpieces by top 10 artists globally.

The methodology involves experimenting with various data augmentation techniques and deliberately avoiding fine-tuning to make the model less accurate. The intentional degradation of accuracy aims to create a dynamic environment where the model is more prone to generating false positives or true negatives. By blurring the lines between the user's unique style and renowned artists, the project aims to push the boundaries of the model's ability to distinguish between different artistic expressions.

The project's main focus is to achieve scenarios where the model incorrectly matches the user's artwork with that of a renowned artist, resulting in a false positive, or correctly identifies the distinct style of the user against the backdrop of the top 10 artists, leading to a true negative. Through this exploration, the project aims to shed light on the nuances of artistic representation within the realm of machine learning, offering insights into the challenges and potential of AI in understanding and replicating diverse artistic styles.

In this kernel, let us try to explore that direction, using techniques of deep learning.

Special thanks to Icaro for sharing this wonderful dataset with us!

Objective:

Develop an algorithm which will identify the artist when provided with a painting, with state of the art precision.

My high-level approach to solution:

Data processing:

Modelling and Training:

Predictions:

Let's implement "DeepArtist" :)

Read data

Data Processing

Data Augmentation

Rotation and Zoom Augmentation

Brightness and Contrast Augmentation

Build Model

Training graph

Evaluate performance

Confusion Matrix. Look at the style of the artists which the model thinks are almost similar.

Evaluate performance by predicting on random images from dataset

This portion is just for fun :) Replace the variable url with an image of one of the 11 artists above and run this cell.